--- see also 'https://github.com/Frege/frege/issues/290 Issue 290'
--- support strictness annotations in unnamed constructor fields
module tests.comp.Issue290 where

data Issue290 = Issue290 !String ?Int

unfein = Issue290 "Okay" (42 `quot` 0)

main :: IO Bool
main = case unfein of
    -- the following line would first print "Okay" and only then die from evaluating 42/0
    -- Issue290 s x → println s >> pure (x > 7)
    -- the following line does not evaluate the int field
    Issue290 s x → println s >> pure true